package com.jdd.modules.parkcar.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jdd.modules.parkcar.entity.ParkWhiteList;
import com.jdd.modules.parking.entity.ParkCarEnterLog;
import com.jdd.modules.system.vo.ParkWhiteListVO;
import com.jdd.modules.system.vo.SynchronousParkWhiteListVO;

import java.util.List;

/**
 * @Description: 白名单
 * @Author: jdd
 * @Date: 2021-02-18
 * @Version: V1.0
 */
public interface IParkWhiteListService extends IService<ParkWhiteList> {
    /**
     * 得到指定车场的是一位多车但状态标志为改变的白名单信息，结果根据车位号和创建时间排序，车位号小的，且创建时间为最新的数据在列表的前端
     *
     * @return 车位相同的车辆数据
     */
    List<ParkWhiteList> getSameParkNumberCars();

    /**
     * 查询白名单车辆
     *
     * @param plateNo
     * @param licenseStatusY
     * @return
     */
    ParkWhiteList findByPlateNo(String plateNo, String licenseStatusY);

    /**
     * 所有得黑白名单车辆车牌
     *
     * @return
     */
    List<String> findWhiteAndBlackList();

    /**
     * 通过车牌设置黑名单
     *
     * @param parkCarEnterLog
     * @return
     */
    boolean zombieToBlack(ParkCarEnterLog parkCarEnterLog);

    void batchAdd(List<SynchronousParkWhiteListVO> parkBlackLists);
}
